56 research outputs found

    Evolution und Komposition von Softwaresystemen: Software-Produktlinien als Beitrag zu Flexibilität und Langlebigkeit

    Get PDF
    Software systems are today bigger, more complex and of higher importance for products and services than a decade before. At the same time changes are required many more frequently and of a larger size. Furthermore, they have to be implemented faster. Additionally, the software must achieve a higher life span, particularly because of the cost of its development. In the past, Object-Oriented Programming and Reuse techniques did not provide the expected success. The introduction of software product lines respectively system families makes possible it to reach a degree of prefabrication similar to the one of serial production. At the same time they facilitate the delivery of product variants with a short time to market. In this work methods of the methods of domain analysis are integrated with Reuse approaches and techniques of Generative Programming, and a methodology for product line development is presented. Feature models are used as means expressing variability and product configurations, so that the prefabrication be planned and the production of customer-specific products can be controlled. By enforcing the formalization in terms of syntax and semantics, feature models are made accessible to tools and automation. Object-oriented design models and architecture are separated into fine-granular components in such a way that new products can easily be developed as combinations of those components. The implementation of such products is automated by the composition of source code components. The composition of object models separated similarly enables a uninterrupted automation for the product development, which is controlled by a customer by means of a feature selection. To facilitate such a composition, the Hyperspace approach is applied to UML to Hyper/UML, which makes possible a feature-driven separation and composition of object models. In this way slim products can be developed, containing only the actually needed functionality. For the evolution of product lines and for the integration of existing solutions and components into the evolution, Reverse Engineering and Refactoring techniques are integrated. Requirements, models and implementation are connected by Traceability links to perform changes consistently. As a consequence, the loss of architectural quality - so-called Architectural Decay - can be avoided during the iterative development process. Measures for the improvement of the project and quality management are regarded briefly, as far as they are of importance for the effectiveness of the developed methods. The applicability and suitability of the results of the work were examined in several industrial projects.Softwaresysteme sind heute umfangreicher, komplexer und von entscheidenderer Bedeutung für Produkte und Dienstleistungen als eine Dekade zuvor. Gleichzeitig sind Änderungen viel häufiger und in größerem Umfang erforderlich. Sie müssen auch schneller realisierbar sein. Zudem muss die Software eine höhere Lebensdauer erreichen, vor allem wegen des Aufwandes zu ihrer Entwicklung. Objektorientierte Programmierung und Wiederverwendungstechniken haben dabei nicht den erwarteten Erfolg gebracht. Die Einführung von Software-Produktlinien beziehungsweise Systemfamilien ermöglichen es, einen der Serienfertigung ähnlichen Vorfertigungsgrad zu erreichen und erlauben es gleichzeitig, kurzfristig Produktvarianten zu erstellen. In dieser Arbeit werden Methoden der Domänenanalyse mit Wiederverwendungsansätzen und Generativen Programmiertechniken verknüpft und eine Methodik zur Produktlinien-Entwicklung vorgestellt. Featuremodelle werden als Ausdrucksmittel für Variabilität und Produktkonfigurationen eingesetzt, damit die Vorfertigung geplant und die Erstellung von kundenspezifischen Produkten gesteuert werden kann. Durch Präzisierung ihrer Syntax und Erweiterung ihrer Semantik werden Featuremodelle einer Nutzung in Werkzeugen zugänglich gemacht. Objektorientierte Entwurfsmodelle und Architektur werden so in feingranulare Komponenten zerlegt, dass Varianten als neue Produkte mit geringem Aufwand erstellbar sind. Die Erstellung der Implementierung solcher Produkte wird durch die Komposition von Quelltext-Komponenten automatisiert. Die Komposition von ebenfalls zerlegten Objektmodellen ermöglicht eine durchgehende Automatisierung der Produkterstellung, die durch einen Kunden mittels der Feature-Auswahl gesteuert wird. Dafür wird mit Hyper/UML eine Umsetzung des Hyperspace-Ansatzes auf die Modellierungssprache UML entwickelt, die eine Feature-gesteuerte Zerlegung und Komposition von Objektmodellen ermöglicht. Damit lassen sich schlanke Produkte entwickeln, die nur die tatsächlich benötigte Funktionalität enthalten. Zur Evolution von Produktlinien und zur Einbindung existierender Lösungen und Komponenten in die Evolution werden Reverse-Engineering- und Refactoring-Techniken integriert. Anforderungen, Modelle und Implementierung werden durch Traceability-Links verbunden, damit Änderungen konsistent durchgeführt werden können. Diese Mittel tragen dazu bei, dass während einer iterativen Entwicklung der Verlust an Architektur-Qualität, das sogenannte Architectural Decay, vermieden werden kann. Maßnahmen zur Verbesserung des Projekt- und Qualitätsmanagements werden kurz betrachtet, soweit sie wichtige Randbedingungen für die Wirksamkeit der Methoden schaffen müssen. Die Anwendbarkeit und Eignung der Ergebnisse der Arbeiten wurde in mehreren industriellen Projekten überprüft.Ilmenau, Techn. Univ., Habil.-Schr., 200

    Exploring Web Search Engines to Find Architectural Knowledge

    Get PDF
    Software engineers need relevant and up-to-date architectural knowledge (AK), in order to make well-founded design decisions. However, finding such AK is quite challenging. One pragmatic approach is to search for AK on the web using traditional search engines (e.g. Google); this is common practice among software engineers. Still, we know very little about what AK is retrieved, from where, and how useful it is. In this paper, we conduct an empirical study with 53 software engineers, who used Google to make design decisions using the Attribute-Driven-Design method. Based on how the subjects assessed the nature and relevance of the retrieved results, we determined how effective web search engines are to find relevant architectural information. Moreover, we identified the different sources of AK on the web and their associated AK concepts

    Towards an HPC certification program

    Get PDF
    The HPC community has always considered the training of new and existing HPC practitioners to be of high importance to its growth. This diversification of HPC practitioners challenges the traditional training approaches, which are not able to satisfy the specific needs of users, often coming from non-traditionally HPC disciplines, and only interested in learning a particular set of competences. Challenges for HPC centres are to identify and overcome the gaps in users’ knowledge, while users struggle to identify relevant skills. We have developed a first version of an HPC certification program that would clearly categorize, define, and examine competences. Making clear what skills are required of or recommended for a competent HPC user would benefit both the HPC service providers and practitioners. Moreover, it would allow centres to bundle together skills that are most beneficial for specific user roles and scientific domains. From the perspective of content providers, existing training material can be mapped to competences allowing users to quickly identify and learn the skills they require. Finally, the certificates recognized by the whole HPC community simplify inter-comparison of independently offered courses and provide additional incentive for participation

    Percutaneous dilatational tracheotomy in high-risk ICU patients

    Get PDF
    BACKGROUND Percutaneous dilatational tracheotomy (PDT) has become an established procedure in intensive care units (ICU). However, the safety of this method has been under debate given the growing number of critically ill patients with high bleeding risk receiving anticoagulation, dual antiplatelet therapy (DAPT) or even a combination of both, i.e. triple therapy. Therefore, the purpose of this study, including such a high proportion of patients on antithrombotic therapy, was to investigate whether PDT in high-risk ICU patients is associated with elevated procedural complications and to analyse the risk factors for bleeding occurring during and after PDT. METHODS PDT interventions conducted in ICUs at 12 European sites between January 2016 and October 2019 were retrospectively analysed for procedural complications. For subgroup analyses, patient stratification into clinically relevant risk groups based on anticoagulation and antiplatelet treatment regimens was performed and the predictors of bleeding occurrence were analysed. RESULTS In total, 671 patients receiving PDT were included and stratified into four clinically relevant antithrombotic treatment groups: (1) intravenous unfractionated heparin (iUFH, prophylactic dosage) (n = 101); (2) iUFH (therapeutic dosage) (n = 131); (3) antiplatelet therapy (aspirin and/or P2Y12 receptor inhibitor) with iUFH (prophylactic or therapeutic dosage) except for triple therapy (n = 290) and (4) triple therapy (DAPT with iUFH in therapeutic dosage) (n = 149). Within the whole cohort, 74 (11%) bleedings were reported to be procedure-related. Bleeding occurrence during and after PDT was independently associated with low platelet count (OR 0.73, 95% CI 0.56, 0.92, p = 0.009), chronic kidney disease (OR 1.75, 95{\%} CI 1.01, 3.03, p = 0.047) and previous stroke (OR 2.13, 95{\%} CI 1.1, 3.97, p = 0.02). CONCLUSION In this international, multicenter study bronchoscopy-guided PDT was a safe and low-complication airway management option, even in a cohort of high risk for bleeding on cardiovascular ICUs. Low platelet count, chronic kidney disease and previous stroke were identified as independent risk factors of bleeding during and after PDT but not triple therapy

    Supporting evolutionary development by feature models and traceability links

    No full text
    During their usage, software systems have to be changed constantly. If such changes are implemented in an incomplete or inconsistent way a loss of architectural quality will occur, i.e. in terms of maintainability and understandability. The lack of traceability of the impact of changed requirements in the software enhances this effect. Traceability links have been proposed as a link between the requirements and the different parts of a solution. In practical use, these links are difficult to establish and maintain. Currently, tools cannot effectively support these links due to human-required decisions. This paper introduces feature models as an intermediate element for linking requirements to design models. They enable a more appropriate bridging of the different levels of abstraction. Feature models group sets of requirements to a feature and enable a modeling of the variability of requirements. The feature models structure traceability links between requirements, design elements and implementation parts. This leads to lower efforts of establishing and maintaining the links. Furthermore, descriptions of design decisions can be attached to the links. Industrial experience with this approach shows its support for the evolutionary development of large software systems, especially in the improved comprehension of the changes by the developers. 1

    Towards a More Precise Definition of Feature Models

    No full text
    Feature models are a well accepted means for expressing requirements in a domain on an abstract level. They are applied to describe variable and common properties of products in a product line, and to derive and validate configurations of software systems. Their industrial importance is increasing rapidly. However, methodical usage and tool support demands for a more precise definition of features, their properties and their relations within a feature model. This position paper summarizes the state of the discussion and proposes issues for future development. Categories of features and types of their attributes and relations are presented. The represented information is limited to a customer point of view onto the feature models without excluding technically detailed features. Connections of features to other models i.e. design, and to implementation elements are given by traceability links. Approaches for graphical representations and data models for feature models are shown. Proposals of attaching additional information for related tasks like product line evolution, scoping, effort estimation, definition of product configurations and documenting are discussed

    Feature-Oriented Development of Software Product Lines: Mapping Feature Models to the Architecture

    No full text
    Abstract. Software product lines (PLs) present a solid approach in large scale reuse. Due to the PLs ’ inherit complexity, many PL methods use the notion of ”features ” to support requirements analysis and domain modelling (e.g. FODA, FORM, FeatuRSEB). Nevertheless, the link between features and architecture remains weak in all methodologies, with a large impact on the traceability of high-level concerns in respect to lower-lever architectural structures. This paper provides an analysis on the state of the art of feature-oriented PL methodologies from the point of view of the linkage between feature models and architecture. Based on the identified shortcomings it introduces an approach to allow a strong mapping between features and architecture. The approach makes use of extensions in the feature modelling techniques and adopts plug-in architectures as a means of mapping feature structures and at the same time satisfying the demanded PL variability and flexibility
    • …
    corecore